<?php

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

class Orden extends AppModel {
    var $useTable = 'ordenes';
    
    public function dameFolio()
    {
        $folio = $this->find('first', array(
            'fields' => 'id',
            'order' => 'id DESC',
            'callbacks' => false,
          ));
        $folio = intval($folio['Orden']['id'])+4091;
        return "$folio";
    }
    public function dameId()
    {
        $id = $this->find('first',array(
            'fields' => 'id',
            'order' => 'id DESC',
            'callbacks' => false,
          ));
        $id = $id['Orden']['id'];
        return $id;
    }
    public function upperAndTrimm($orden)
    {
        $orden['folio'] = strtoupper($orden['folio']).trim($orden['folio']);
        $orden['nombre'] = strtoupper($orden['nombre']).trim($orden['nombre']);
        $orden['ap_paterno'] = strtoupper($orden['ap_paterno']).trim($orden['ap_paterno']);
        $orden['ap_materno'] = strtoupper($orden['ap_materno']).trim($orden['ap_materno']);
        $orden['direccion'] = strtoupper($orden['direccion']).trim($orden['direccion']);
        $orden['telefono'] = strtoupper($orden['telefono']).trim($orden['telefono']);
        $orden['id_ing'] = strtoupper($orden['id_ing']).trim($orden['id_ing']);
        $orden['descripcion'] = strtoupper($orden['descripcion']).trim($orden['descripcion']);
        $orden['observaciones'] = strtoupper($orden['observaciones']).trim($orden['observaciones']);
        $orden['id_cliente'] = strtoupper($orden['id_cliente']).trim($orden['id_cliente']);
        return $orden;
    }
    
    public function dameOrdenes() {
        $db = $this->getDataSource();
        $obj = $db->fetchall("
                SELECT o.id, o.folio, u1.nombre, u2.nombre, u3.nombre, lo.observaciones, o.descripcion, o.estado, o.fecha, o.edo_material
                FROM ordenes AS o
                LEFT JOIN usuarios u1 ON o.id_asesor=u1.id
                LEFT JOIN usuarios u2 ON o.id_cliente=u2.id
                LEFT JOIN usuarios u3 ON o.id_ing=u3.id
                LEFT JOIN log_ordenes lo ON o.id = lo.id_orden
                ORDER BY o.fecha DESC"
                );
        return $this->arregloNormal($obj);
    }
    
    public function dameOrdenesConfirmacion() {
        $db = $this->getDataSource();
        $obj = $db->fetchall("
                SELECT o.id, o.folio, u1.nombre, u2.nombre, 
                    u3.nombre, lo.observaciones, o.descripcion, 
                    o.estado, o.fecha, o.edo_material
                FROM ordenes AS o
                LEFT JOIN usuarios u1 ON o.id_asesor=u1.id
                LEFT JOIN usuarios u2 ON o.id_cliente=u2.id
                LEFT JOIN usuarios u3 ON o.id_ing=u3.id
                LEFT JOIN log_ordenes lo ON o.id = lo.id_orden
                WHERE lo.estado = 2
                AND o.estado = 2
                ORDER BY o.fecha DESC"
                );
        return $this->arregloNormal($obj);
    }

    public function dameFecha()
    {
        $fecha = $this->getDataSource()->fetchall("SELECT CURDATE() as c");
        $fecha = $fecha[0][0]['c'];
        $hora = $this->getDataSource()->fetchall("SELECT CURTIME() as c");
        $hora = $hora[0][0]['c'];
        return($fecha."  ".$hora);
    }
    
    public function ordenesIngeniero($id)
    {
        $listado = $this->find('all', array(
                    'conditions' => array('id_ing' => $id,'estado'=>array(0,1)),
                    'fields' => array('id',
                                      'folio',
                                      'descripcion',
                                      'estado',
                                      'fecha'),
                    'order' => 'id ASC'
                  ));
        return($listado);
    }
    public function arregloNormal($ordenes)
    {
        $nOrdenes;
        foreach ($ordenes as $value){
            $nOrdenes[] = array('ordenes' => array(
                'id' => $value['o']['id'],
                'folio' => $value['o']['folio'],
                'descripcion' => $value['o']['descripcion'],
                'observaciones' => $value['lo']['observaciones'],
                'estado' => $value['o']['estado'],
                'fecha' => $value['o']['fecha'],
                'id_asesor' => $value['u1']['nombre'],
                'id_cliente' => $value['u2']['nombre'],
                'id_ing' => $value['u3']['nombre'],
                'edo_material'=>$value['o']['edo_material']
            ));
        }
        return $nOrdenes;
    }
    
    
}
?>
